package com.dkd.day20250717;

import java.util.Scanner;

public class Main22 {
    public static void main(String[] args) {
        //题目描述
        //输入两个字符串 S 和 L ，都只包含英文小写字母。S长度 ≤ 100，L长度 ≤ 500,000。判定S是否是L的有效子串。
        //
        //判定规则：S 中的每个字符在 L 中都能找到（可以不连续），且 S 在Ｌ中字符的前后顺序与 S 中顺序要保持一致。（例如，S = ”ace” 是 L= ”abcde” 的一个子序列且有效字符是a、c、e，而”aec”不是有效子序列，且有效字符只有a、e）
        //
        //输入描述
        //输入两个字符串 S 和 L，都只包含英文小写字母。S长度 ≤ 100，L长度 ≤ 500,000。
        //
        //先输入S，再输入L，每个字符串占一行。
        //
        //输出描述
        //S 串最后一个有效字符在 L 中的位置。（首位从0开始计算，无有效字符返回-1）
        Scanner sc = new Scanner(System.in);
        String s1 = sc.nextLine();
        String s2 = sc.nextLine();
        solve(s1, s2);
    }

    public static void solve(String s1,String s2) {
        int i =0;
        int j =0;
        while(i<s1.length() && j<s2.length()){
            if(s1.charAt(i)==s2.charAt(j)){
                i++;
                j++;
            }else{
                j++;
            }
        }

        if( i == s1.length()) System.out.println(j-1);
        else System.out.println(-1);        ;
    }
}
